home *** CD-ROM | disk | FTP | other *** search
Makefile | 1995-04-03 | 5.9 KB | 210 lines |
- #
- # Makefile for c68 version of MiNTlibs
- #
- # There's a certain amount of ugliness here because of dain bramage
- # in SozobonX's make; these are marked with the comment (blech).
- # and will be removed in the event of bugfixes.
- #
-
- #MMODEL = -mlong
- #LIBC = libc32.a
- #LIBIIO = libiio32.a
-
- #LIBC = libc.a
- #LIBIIO = libiio.a
- ALL_LIB = crt0.o $(LIBC) $(LIBIIO)
-
- CC = cc68x
- AS = jas
- AR = ar
- CFLAGS = -O -DNDEBUG +P-fimplicit-newlines +C-trap $(MMODEL)
-
- #RM = rm -f
- #CP = cp
- MAKE = make
-
- LIB = u:\lib\c68
-
- #
- # ANSI stuff + support
-
- ANSI = abort.o atexit.o atoi.o atol.o bsearch.o calloc.o clock.o ctime.o \
- ctype.o difftime.o div.o doprnt.o eprintf.o fclose.o fdopen.o \
- fflush.o fgetc.o fgetpos.o fgets.o filbuf.o fopen.o fopen_i.o \
- fprintf.o fputc.o fputs.o fread.o freopen.o fscanf.o fseek.o \
- ftell.o fsetpos.o fungetc.o fwrite.o getbuf.o getenv.o gets.o \
- getw.o ldiv.o localtim.o ltoa.o main.o malloc.o printf.o puts.o \
- qsort.o raise.o rand.o realloc.o rewind.o scanf.o sscanf.o setbuf.o \
- setvbuf.o setlocal.o sprintf.o strftime.o strtol.o strtoul.o \
- system.o tmpnam.o tmpfile.o toxxx.o vfprintf.o vfscanf.o vprintf.o \
- vscanf.o wcmb.o wcscat.o wcscmp.o wcscpy.o wcslen.o wnull.o
-
- #
- # other miscellaneous stuff
-
- PORT = a64l.o alphasor.o abs.o buffindf.o ctermid.o cuserid.o enoent.o \
- ffs.o findfile.o fopenp.o frwbin.o ftw.o gethostn.o getlogin.o \
- getopt.o getpages.o getpass.o getpw.o grp.o l64a.o labs.o mktemp.o \
- nlist.o obstack.o random.o regexp.o regsup.o scandir.o strlwr.o \
- strupr.o strrev.o sync.o textio.o truncate.o utmp.o wtmp.o ic.o \
- ig.o il.o ip.o iw.o ident.o atof.o
-
- #
- # stuff to fake unix system calls
-
- UNIX = access.o alarm.o console.o chdir.o chmod.o chown.o close.o \
- closedir.o do_lock.o do_stat.o dup.o dup2.o execl.o execle.o \
- execp.o execv.o execve.o fcntl.o flock.o fork.o fstat.o getcwd.o \
- getdtabl.o getegid.o geteuid.o getgid.o getgroup.o getitimer.o \
- getloadavg.o getpid.o getppid.o getuid.o getrusag.o getwd.o \
- initgroups.o inode.o ioctl.o isatty.o isctty.o kill.o killpg.o \
- link.o lockf.o lseek.o lstat.o mkfifo.o mkdir.o mknod.o nice.o \
- open.o opendir.o pause.o pipe.o perror.o pgrp.o popen.o \
- psignal.o putenv.o read.o readdir.o rewinddi.o rename.o rmdir.o \
- sbrk.o seekdir.o select.o setegid.o seteuid.o setgid.o \
- setitimer.o setregid.o setreuid.o setuid.o sgtty.o sigactio.o \
- sigblock.o siglist.o signal.o sleep.o spawn.o spawnve.o \
- spawnvp.o setrlimi.o stat.o statfs.o symlink.o sysconf.o \
- telldir.o time.o times.o timeoday.o ttyname.o uidgid.o uname.o \
- unlink.o unx2dos.o utime.o vfork.o wait.o wait3.o waitpid.o \
- write.o
-
- #
- # termios stuff
-
- TERMIOS = cfgetisp.o cfgetosp.o cfsetisp.o cfsetosp.o tcattr.o tcbreak.o \
- tcdrain.o tcflow.o tcflush.o tcpgrp.o
-
- #
- # the string library
-
- STRING = strcat.o strchr.o strcmp.o strcpy.o strcspn.o strdup.o strlen.o \
- strncat.o strncmp.o strncpy.o strpbrk.o strrchr.o strspn.o \
- strtok.o strstr.o memccpy.o memcmp.o memchr.o memset.o bcopy.o \
- bcmp.o bzero.o strerror.o strcoll.o stricmp.o strnicmp.o
-
- #
- # Interna and c68 specific stuff
-
- SPECIAL = crtinit.o stksiz.o inistack.o heapbase.o binmode.o alloca.o \
- setjmp.o osbind.o thread.o sysvar.o initsig.o defmode.o linea.o \
- stackche.o stackerr.o stmttrac.o xdiv.o xmul.o
-
- #
- # IEEE support routines
-
- IEEE = dfadd.o dftol.o frexp.o modff.o sfmul.o sftst.o dfcmp.o dfneg.o\
- dftosf.o sfadd.o sfneg.o sfutosf.o dfdiv.o dftoul.o ldexp.o\
- sfcmp.o sftodf.o xerror.o dfltodf.o dftst.o sfdiv.o sftol.o\
- xnorm4.o dfmul.o dfutodf.o modf.o sfltosf.o sftoul.o xnorm8.o
-
- #
- # stuff for integer only scan/printf
-
- IIOBJS = printf.o fprintf.o sprintf.o vprintf.o vfprintf.o \
- idoprnt.o fscanf.o sscanf.o vscanf.o vfscanf.o iscanf.o
-
-
- ALL = $(ANSI) $(PORT) $(UNIX) $(TERMIOS) $(STRING) $(SPECIAL) $(IEEE)
-
-
- lshort: short.tag
- $(MAKE) MMODEL=-mshort LIBC=libc.a LIBIIO=libiio.a install
-
- llong: long.tag
- $(MAKE) MMODEL=-mlong LIBC=libc32.a LIBIIO=libiio32.a install32
-
- # (blech) Since SozobonX's make, which is probably the one being used
- # with c68, doesn't have a touch command, we copy a small file to create
- # the .tag files.
- short.tag long.tag:
- $(MAKE) clean
- $(RM) short.tag long.tag
- -$(CP) stksiz.c $@
-
- all: crt0.o $(LIBC) $(LIBIIO)
-
- # (blech) Because of a bug in SozobonX's make, macros from the command
- # line aren't expanded in dependency lines; the target for this line
- # should have been $(LIBC)...
- libc.a libc32.a: $(ALL)
- $(AR) rc $@ $(ALL)
- libsort -M -u __crtinit $@
-
- # (blech) ...and here $(LIBIIO).
- libiio.a libiio32.a: $(IIOBJS)
- $(AR) rc $@ $(IIOBJS)
-
- clean:
- $(RM) crt0.o $(LIBC) $(LIBIIO) $(ALL) $(ASM) iscanf.o idoprnt.o
-
- spotless: clean
- $(RM) short.tag long.tag
-
- # (blech) And again, these two rules were originally the same, with the
- # target $(ALL_LIB); because of the above-mentioned bug, we have to do
- # it this ugly way.
- install: crt0.o libc.a libiio.a
- $(CP) crt0.o $(LIB)\crt0.o
- $(CP) $(LIBC) $(LIB)\$(LIBC)
- $(CP) $(LIBIIO) $(LIB)\$(LIBIIO)
-
- install32: crt0.o libc32.a libiio32.a
- $(CP) crt0.o $(LIB)\crt0.o
- $(CP) $(LIBC) $(LIB)\$(LIBC)
- $(CP) $(LIBIIO) $(LIB)\$(LIBIIO)
-
-
- #
- # Assembler stuff that needs to be preprocessed
-
- .SUFFIXES: .cpp .spp
-
- .cpp.o:
- $(CC) $(MMODEL) -S -o $*.i $<
- mit2mot $*.i
- @$(RM) $*.i
- $(AS) $(AFLAGS) $*.s
- @$(RM) $*.s
-
- .spp.o:
- $(CC) $(MMODEL) -c -DAssemB $<
-
- .s.o:
- $(AS) $(AFLAGS) $<
-
- crt0.o: crt0.cpp
- setjmp.o: setjmp.cpp
- vfork.o: vfork.cpp
- alloca.o: alloca.cpp
- bcopy.o: bcopy.cpp
- frexp.o: frexp.spp
- ldexp.o: ldexp.spp
- linea.o: linea.spp
- modf.o: modf.spp
- modff.o: modff.spp
- xerror.o: xerror.spp
-
- bzero.o: bzero.cpp
- $(CC) $(MMODEL) -DLbzero -S -o bzero.i bzero.cpp
- mit2mot bzero.i
- @$(RM) bzero.i
- $(AS) $(AFLAGS) bzero.s
-
- memset.o: bzero.cpp
- $(CC) $(MMODEL) -DLmemset -S -o memset.i bzero.cpp
- mit2mot memset.i
- @$(RM) memset.i
- $(AS) $(AFLAGS) memset.s
-
- ASM = alloca.s bcopy.s bzero.s crt0.s memset.s setjmp.s vfork.s
-
-
- #
- # integer only io stuff
- idoprnt.o: doprnt.c
- $(CC) $(CFLAGS) -D__NO_FLOAT__ -c -o idoprnt.o doprnt.c
-
- iscanf.o: scanf.c
- $(CC) $(CFLAGS) -D__NO_FLOAT__ -c -o iscanf.o scanf.c
-